#演示集合的常用操作
basket = {'apple' , 'orange' , 'apple' , 'pear' , 'orange' , 'banana'}
#1.len(集合)：集合元素个数
print(f"一共有{len(basket)}个元素")

#x in s : 检测 x 是否为s中的成员
#判断  apple 是否在集合中
print("apple" in basket)


#3.add(elem)将elem添加到集合中
#需求，将grape添加到集合中
basket.add("grape")
print(basket)


#4.remove(elem) 从集合中移除元素 elem。 如果 elem 不存在于集合中则会引发 KeyError。
#需求，将apple从集合中删除
basket.remove("apple")
print(basket)

#5.pop() 从集合中任意移除一个元素
#如果集合为空会引发 keyError , pop() 操作会真的改变原来的集合
ele = basket.pop()
print(ele)
print("basket的元素" , basket)

#union(*other):返回一个新集合   和   |   一个意思
#其中包含来自于原集合以及Others指定的所有集合的元素
books = {'天龙八部' , '笑傲江湖'}
books_2 = {'雪山飞狐' , '神雕侠侣' , '天龙八部'}
#需求,将books和books_2进行合集操作【即：求出books集合或者在books_2集合的元素】
#将两个集合合并 并且去重
# books_3 = books.union(books_2)
books_3 = books | books_2
print(f"books_3 , {books_3}")

#8.intersection(*others):返回一个新集合  和 & 是一个意思
#其中包含原集合以及others指定的所有集合中共有的元素
#需求：对books 和 books_2求交集【即:求出既在books又在books_2集合的元素】
books_4 = books.intersection(books_2)
books_4 = books & books_2
print("books_4->" , books_4) #{'天龙八部'}

#9.difference(*others):返回一个新集合   和  -  是一个意思
#返回前面集合中有的  后面集合中没有的
#其中包含原集合中再others指定的其他集合中不存在的元素
books_5 = books.difference(books_2)
books_5 = books - books_2
print("books_5:" , books_5)

#只求出存在在books2集合中的元素
books_6 = books_2 - books
print("books_6" , books_6)





